#ifndef __DATA_H__
#define __DATA_H__

#include <iostream>
#include <fstream>
#include <vector>
#include <string>

typedef std::vector<char> charVec;

class Data {
public:
	Data(Data &obj);
	Data(std::string fileName);
	~Data();

	void setDimensions(int &nInds, int &nSteps);
	std::vector<charVec> getData();
	std::vector<int> getGrpCountVector();
	int getGrpCount(std::vector<int> grpCountVector);

	static int getInt(const char c);

private:
	int nInds;
	int nSteps;
	std::string fileName;
	std::ifstream dataFile;
	std::vector<charVec> data;
	std::vector<int> grpCount;

	int **dataMatrix;

	void init(); // Sets number of Individuals and Number of timesteps
};
#endif
